Encoding a custom cooking program

ABSTRACT

In various embodiments, a method of encoding a custom cooking program includes receiving at least one sensor reading associated with food, determining at least one characteristic of the food based on the at least one sensor reading, generating cooking instructions for the food based on the at least one characteristic, and storing data that associates the cooking instructions with the food.

CROSS REFERENCE TO OTHER APPLICATIONS

This application is a continuation of co-pending U.S. patent applicationSer. No. 15/489,468 entitled ENCODING A CUSTOM COOKING PROGRAM filedApr. 17, 2017, which is incorporated herein by reference for allpurposes.

BACKGROUND OF THE INVENTION

There are many challenges in food preparation. Cooking can betime-consuming and messy. For example, ingredient selection,acquisition, transportation, and preparation can be inconvenient. Inspite of the effort expended, sometimes the results of meal preparationare unsatisfying. Successfully extracting flavors from ingredientstypically requires lengthy cooking processes such as stewing or skilledprocesses such as browning. The final tastiness of food depends on thecharacteristics of the ingredients and a person's tastes andpreferences.

Pre-packaged chilled convenience meals have been popular since the 1950sfor its ease of preparation. Typical convenience meals are packaged in atray and frozen. The consumer heats the meal in an oven or microwave andconsumes the food directly from the tray. However, conventionalpre-packaged convenience meals might be unhealthy and not tasty, andresults may vary depending on the microwave or oven used to heat themeal. For example, the food might be heated unevenly.

BRIEF DESCRIPTION OF THE DRAWINGS

Various embodiments of the invention are disclosed in the followingdetailed description and the accompanying drawings.

FIG. 1 is a functional diagram illustrating a programmed computer systemfor encoding a custom cooking program in accordance with someembodiments.

FIG. 2 is a flowchart illustrating an embodiment of a process to encodea custom cooking program.

FIG. 3A is a block diagram illustrating an embodiment of a cookingschedule.

FIG. 3B is a block diagram illustrating an embodiment of a cookingschedule.

FIG. 4 is a table illustrating an embodiment of encoding a customcooking program.

FIG. 5 is a flowchart illustrating an embodiment of a process to packagefood.

FIG. 6 is a block diagram illustrating an embodiment of an apparatus tostore and transport matter.

FIG. 7 is a block diagram illustrating an embodiment of an apparatus forheating.

FIG. 8 is a block diagram of an embodiment of a controller for a heatingapparatus.

FIG. 9 is a flowchart illustrating an embodiment of a process to operatean automatic heating system.

DETAILED DESCRIPTION

The invention can be implemented in numerous ways, including as aprocess; an apparatus; a system; a composition of matter; a computerprogram product embodied on a computer readable storage medium; and/or aprocessor, such as a processor configured to execute instructions storedon and/or provided by a memory coupled to the processor. In thisspecification, these implementations, or any other form that theinvention may take, may be referred to as techniques. In general, theorder of the steps of disclosed processes may be altered within thescope of the invention. Unless stated otherwise, a component such as aprocessor or a memory described as being configured to perform a taskmay be implemented as a general component that is temporarily configuredto perform the task at a given time or a specific component that ismanufactured to perform the task. As used herein, the term ‘processor’refers to one or more devices, circuits, and/or processing coresconfigured to process data, such as computer program instructions.

A detailed description of one or more embodiments of the invention isprovided below along with accompanying figures that illustrate theprinciples of the invention. The invention is described in connectionwith such embodiments, but the invention is not limited to anyembodiment. The scope of the invention is limited only by the claims andthe invention encompasses numerous alternatives, modifications andequivalents. Numerous specific details are set forth in the followingdescription in order to provide a thorough understanding of theinvention. These details are provided for the purpose of example and theinvention may be practiced according to the claims without some or allof these specific details. For the purpose of clarity, technicalmaterial that is known in the technical fields related to the inventionhas not been described in detail so that the invention is notunnecessarily obscured.

A method of encoding a custom cooking program is disclosed. In variousembodiments, the method includes receiving at least one sensor readingassociated with food. At least one characteristic of the food isdetermined based on the at least one sensor reading. Cookinginstructions are generated for the food based on the at least onecharacteristic, where the cooking instructions includes a sequence ofcooking phases. In various embodiments, the cooking phases are definedby one or more of a duration of a phase, an energy level for the phase,and/or a response to an event that occurs during at least one of thecooking phases. In various embodiments, the cooking instructions arestored.

FIG. 1 is a functional diagram illustrating a programmed computer systemfor encoding a custom cooking program in accordance with someembodiments. As will be apparent, other computer system architecturesand configurations can be used to encode a custom cooking program.Computer system 100, which includes various subsystems as describedbelow, includes at least one microprocessor subsystem (also referred toas a processor or a central processing unit (CPU)) 102. For example,processor 102 can be implemented by a single-chip processor or bymultiple processors. In some embodiments, processor 102 is a generalpurpose digital processor that controls the operation of the computersystem 100. Using instructions retrieved from memory 110, the processor102 controls the reception and manipulation of input data, and theoutput and display of data on output devices (e.g., display 118). Insome embodiments, processor 102 includes and/or is used toexecute/perform the processes described below with respect to FIGS. 2and 5.

Processor 102 is coupled bi-directionally with memory 110, which caninclude a first primary storage, typically a random access memory (RAM),and a second primary storage area, typically a read-only memory (ROM).As is well known in the art, primary storage can be used as a generalstorage area and as scratch-pad memory, and can also be used to storeinput data and processed data. Primary storage can also storeprogramming instructions and data, in the form of data objects and textobjects, in addition to other data and instructions for processesoperating on processor 102. Also as is well known in the art, primarystorage typically includes basic operating instructions, program code,data and objects used by the processor 102 to perform its functions(e.g., programmed instructions). For example, memory 110 can include anysuitable computer-readable storage media, described below, depending onwhether, for example, data access needs to be bi-directional oruni-directional. For example, processor 102 can also directly and veryrapidly retrieve and store frequently needed data in a cache memory (notshown).

A removable mass storage device 112 provides additional data storagecapacity for the computer system 100, and is coupled eitherbi-directionally (read/write) or uni-directionally (read only) toprocessor 102. For example, storage 112 can also includecomputer-readable media such as magnetic tape, flash memory, PC-CARDS,portable mass storage devices, holographic storage devices, and otherstorage devices. A fixed mass storage 120 can also, for example, provideadditional data storage capacity. The most common example of massstorage 120 is a hard disk drive. Mass storage 112, 120 generally storeadditional programming instructions, data, and the like that typicallyare not in active use by the processor 102. It will be appreciated thatthe information retained within mass storage 112 and 120 can beincorporated, if needed, in standard fashion as part of memory 110(e.g., RAM) as virtual memory.

In addition to providing processor 102 access to storage subsystems, bus114 can also be used to provide access to other subsystems and devices.As shown, these can include a display monitor 118, a network interface116, a keyboard 104, and a pointing device 106, as well as an auxiliaryinput/output device interface, a sound card, speakers, and othersubsystems as needed. For example, the pointing device 106 can be amouse, stylus, track ball, or tablet, and is useful for interacting witha graphical user interface.

The network interface 116 allows processor 102 to be coupled to anothercomputer, computer network, or telecommunications network using anetwork connection as shown. For example, through the network interface116, the processor 102 can receive information (e.g., data objects orprogram instructions) from another network or output information toanother network in the course of performing method/process steps.Information, often represented as a sequence of instructions to beexecuted on a processor, can be received from and outputted to anothernetwork. An interface card or similar device and appropriate softwareimplemented by (e.g., executed/performed on) processor 102 can be usedto connect the computer system 100 to an external network and transferdata according to standard protocols. For example, various processembodiments disclosed herein can be executed on processor 102, or can beperformed across a network such as the Internet, intranet networks, orlocal area networks, in conjunction with a remote processor that sharesa portion of the processing. Additional mass storage devices (not shown)can also be connected to processor 102 through network interface 116.

An auxiliary I/O device interface (not shown) can be used in conjunctionwith computer system 100. The auxiliary I/O device interface can includegeneral and customized interfaces that allow the processor 102 to sendand, more typically, receive data from other devices such asmicrophones, touch-sensitive displays, transducer card readers, tapereaders, voice or handwriting recognizers, biometrics readers, cameras,portable mass storage devices, and other computers.

In addition, various embodiments disclosed herein further relate tocomputer storage products with a computer readable medium that includesprogram code for performing various computer-implemented operations. Thecomputer-readable medium is any data storage device that can store datawhich can thereafter be read by a computer system. Examples ofcomputer-readable media include, but are not limited to, all the mediamentioned above: magnetic media such as hard disks, floppy disks, andmagnetic tape; optical media such as CD-ROM disks; magneto-optical mediasuch as optical disks; and specially configured hardware devices such asapplication-specific integrated circuits (ASICs), programmable logicdevices (PLDs), and ROM and RAM devices. Examples of program codeinclude both machine code, as produced, for example, by a compiler, orfiles containing higher level code (e.g., script) that can be executedusing an interpreter.

The computer system shown in FIG. 1 is but an example of a computersystem suitable for use with the various embodiments disclosed herein.Other computer systems suitable for such use can include additional orfewer subsystems. In addition, bus 114 is illustrative of anyinterconnection scheme serving to link the subsystems. Other computerarchitectures having different configurations of subsystems can also beutilized.

FIG. 2 is a flowchart illustrating an embodiment of a process 200 toencode a custom cooking program. In various embodiments, the customcooking program is adapted for ingredients whose characteristics aremeasured by sensors. In various embodiments, the process 200 may beimplemented by a processor such as processor 102 of FIG. 1.

At 202, at least one sensor reading is received. In some embodiments, acontroller directs sensors to make the sensor readings. In variousembodiments, the sensor readings include information about food. Forexample, the sensor readings may include physical aspects of themeasured food. From the sensor readings, other information such asfreshness and nutritional value of the food may be derived. The sensorreading may be useful for packaging and encoding cooking instructionsfor the food among other things. In one aspect, the sensor measurementof the food indicates particular characteristics of a specific piece orportion of food. This may allow cooking instructions to be adapted forthe specific piece or portion of food.

The sensor reading may include information about the weight and/orvolume of the food. The sensor reading may include characteristics offood detected by spectroscopy. The sensor reading may include imageanalysis of the food. By way of non-limiting example, image analyticsinclude colorimetry, images captured by a camera (e.g., charge coupleddevice (CCD), CMOS, multispectral, hyperspectral, cameras, etc.),ultrasound, MRI/NMR (nuclear magnetic resonance), CT, electricaltomography, X-Ray/T-Ray/Gamma-ray, and infrared. The sensor reading mayinclude fluorescence and delayed light emission (DLE). The sensorreading may include near-infrared spectrophotometry such as readingscollected by a fiber-optic probe. The sensor reading may includeterahertz radiation readings, thermal radiation readings, gas analysis,and chemical sensors (e.g., sniffer).

At 204, at least one characteristic of food is determined based on thereceived sensor reading(s). In various embodiments, the sensor readingindicates at least one of: shape, size, volume, thickness, and weight ofthe measured food. In various embodiments, the sensor reading indicatescolor of the food. The color of the food may indicate freshness,quality, and taste (e.g., sweetness, tartness, etc.). In variousembodiments, the sensor reading determines age or expiration date of thefood. For example, a piece of food may arrive with a tag indicating whenthat piece of food was harvested or caught. As another example, anapproximate harvest or catch date may be deduced based oncharacteristics of the food. In various embodiments, sensor readingsabout water content may indicate maturity, defects, decay, and/orquality of the measured food. In various embodiments, sensor readingsindicate nutritional value of the food. For example, protein content,lipid content, and carbohydrate content may be measured and/ordetermined from sensor readings.

In particular, electrical tomography readings (e.g., R, C, I changes)may indicate meat quality such as tenderness or age of the meat.Fluorescence and DLE readings may indicate vegetable quality based onchlorophyll content and photosynthesis characteristics. Near-infraredspectrophotometry may indicate firmness, freshness, Brix value (e.g.,sugar content of an aqueous solution), acidity, color, fat content,water content, protein content, nitrogen content, sugar content, alcoholcontent, etc. Terahertz radiation readings may indicate fat content andripeness of food and, in some cases, is a safer alternative to X-raysand Gamma-rays. MRI/NMR readings may indicate fat content and watercontent. X-rays may indicate degradation of food such as rotting,bruising, or freezer damage. Mechanical, sonic, and/or ultrasoundmeasurements may indicate firmness, elasticity, shape, and density. Forexample, a laser air-puff detector can determine a firmness of food. Animpulse response may measure elasticity, internal friction or damping,shape, and size density. Tissue properties may be evaluated based onwave velocity, attenuation, and reflection.

In some embodiments, a characteristic of food is determined from asensor reading for the food, e.g., a direct measurement of the food. Insome embodiments, a characteristic of food is determined from sensorreadings for other foods associated with the food, e.g., a batch ofgoods or adjacent pieces of food.

At 206, cooking instructions are generated based on the determinedcharacteristic(s) of the food. In various embodiments, cookinginstructions include one or more phases, duration of each phase, and/orenergy level for each phase, etc. For example, the cooking instructionsmay be provided as a recipe or schedule (e.g., a sequence of heatingcycles) in which the food is heated at a particular temperature/energyfor a defined duration of time. An example of a cooking schedule isshown in FIG. 3. The cooking instructions may be adapted for a heatingapparatus such as heating apparatus 700 of FIG. 7.

At 208, the cooking instructions are recorded. In various embodiments,the cooking instructions are recorded on an electronic tag such as tag624 of FIG. 6 as further described herein. In various embodiments, thecooking instructions are stored in a server and can be looked up usingan identification provided with packaged food. For example, in variousembodiments, the cooking instructions are stored with association(s) topackages and when a query is provided with an identification of apackage, the instructions are retrieved. The stored cooking instructionsmay be read and executed by a heating apparatus such as heatingapparatus 700 of FIG. 7.

FIG. 3A is a block diagram illustrating an embodiment of a cookingschedule. The cooking schedule may be determined by decoding a customcooking program. In the examples of FIGS. 3A and 3B, the cookingschedule is represented by a graph, wherein the x-axis is time inseconds and the y-axis is energy level. The energy level is given by theenergy that a heating apparatus is capable of providing, e.g., field perunit volume of the material being heated up, heat per unit volume ofmaterial, temperature, etc.

The example cooking schedule shown in FIG. 3A takes three minutes andincludes three phases: first searing at 100% energy for 45 seconds, thenbaking at 12.5% energy for 90 seconds, and finally finishing at 100%energy for 45 seconds. In various embodiments, this cooking schedule isdetermined from food characteristics.

The example cooking schedule shown in FIG. 3B illustrates that an energylevel during a phase need not be uniform. In this example, in phase 1,energy is linearly decreased from 100% to around 27%. In phase 2, energyis linearly decreased from around 27% to around 12.5%. In phase 3,energy is exponentially increased from around 12.5% to 100%.

In various embodiments, the cooking schedule is adapted to a type offood. For example, in various embodiments, steak has a particularcooking profile/schedule such as sear, bake, and finish; fish hasanother cooking profile/schedule such as steam at 50% energy; carrotshave another cooking profile/schedule such as steam at 75% energy, peashave another cooking profile/schedule such as steam at 25% energy. Eachtype of food may also have a variety of preparation of methods. Forexample, carrots can be steamed or sautéed and each method ofpreparation may have a different cooking schedule.

In various embodiments, the cooking schedule is adapted tocharacteristics of a specific piece of food. For example, in variousembodiments, salmon has a generic baseline cooking schedule. Thebaseline cooking schedule can be adjusted for a particular piece ofsalmon to accommodate the specific characteristics of the salmon such asthickness, tenderness, etc. A salmon filet that is thicker than anaverage salmon filet can be heated for a longer time. A piece of meatthat is tougher than an average piece of meat can be stewed for a longertime, at a lower temperature (compared with a temperature used for anaverage piece of meat), and/or at a higher pressure to achieve a desiredlevel of tenderness. The heating schedule may be encoded (e.g., on anelectronic tag or stored on a server) by representing the schedule as anumber of phases, duration of each phase, and energy level for eachphase, etc.

FIG. 4 is a table illustrating an embodiment of encoding a customcooking program. In various embodiments, the cooking program iscustomized for and associated with a particular food. The custom cookingprogram may be stored in a pre-defined number of bits. In this example,a custom cooking program is stored using no more than 96 bits. Forexample, in various embodiments, 10 bits are allocated for storing anexpiration date of the food, 10 bits are allocated for storing a foodtype and/or characteristic(s) of the food such as characteristicsdetermined at 204 of process 200 in FIG. 2, no more than around 42 bitsare allocated for storing a heating schedule such as the schedule ofFIG. 3, 10 bits are allocated for storing a time to provide a secondarysubstance such as the time when a sauce is released, 10 bits areallocated for a security mechanism such as a secrecy code, and 14 bits(or a remainder of the bits) are allocated for miscellaneous functions.With respect to the around 42 bits for storing the heating schedule, 10bits may be allocated for the duration of one or more phases, 3 bits maybe allocated for a heat level for each of the phases, and 1 bit may beallocated for an event. For example, in various embodiments, an event isan evaluation of feedback received during a cooking process that canalter subsequent phases in the cooking process.

FIG. 5 is a flowchart illustrating an embodiment of a process 500 topackage food. In various embodiments, the process 500 may be implementedby a processor such as processor 102 of FIG. 1.

At 502, at least one sensor reading is received. An example ofcollection and receipt of sensor readings is described with respect to202 of FIG. 2.

At 504, at least one characteristic of food is determined based on thereceived sensor reading(s). An example of determination of foodcharacteristics is described with respect to 204 of FIG. 2.

At 506, packaging properties are determined based on the sensor readingand/or characteristic of the food. For example, packaging properties mayinclude how much water to inject into a membrane. The membrane mayrelease or absorb water during a cooking process. As another example,packaging properties include what type of membrane to use. The membranemay absorb water during a cooking process. For example, packagingproperties may include what type of metal layer to user, what type ofmaterial to use for chamber, and sizing of the chamber to accommodateheating. Each of these components is further described herein withrespect to FIG. 6.

At 508, food is packaged based on the determined properties. In variousembodiments, the cooking instructions are stored on an electronic tagsuch as tag 624 of FIG. 6 as further described herein.

In some embodiments, process 500 includes determining cookinginstructions (not shown). The food is packaged based at least in part onthe determined cooking instructions. For example, in variousembodiments, packaging is selected for the food to accommodate thecooking methods. Suppose the cooking instructions includes stewing beef.The food is packaged in a chamber suitable for stewing such as arelatively deep bowl.

FIG. 6 is a block diagram illustrating an embodiment of an apparatus 600to store and transport matter 630. For example, in various embodimentsthe apparatus 600 is adapted to store and transport matter 630comprising food or other heatable loads. The apparatus 600 includes atop portion 610, a bottom portion 612, a metal layer 614, a membrane616, a seal 618, and a pressure relief valve 620.

The bottom portion 612 is adapted to receive matter 630. The bottomportion holds food or other types of loads. For example, the bottomportion may be a plate or bowl. As further described herein, a user maydirectly consume the matter 630 from the bottom portion 612.

The top portion 610 is adapted to fit the bottom portion 612 to form achamber. For example, the top portion may be a cover for the bottomportion. In some embodiments, the top portion is deeper than the bottomportion and is a dome, cloche, or other shape. Although not shown, insome embodiments, the top portion is shallower than the bottom portion.In some embodiments, the top portion is transparent and the matter 630can be observed during a preparation/heating process. In someembodiments, the chamber is at least partially opaque. For example,portions of the chamber may be opaque to prevent users frominadvertently touching the apparatus when the chamber is hot.

The top portion 610 and the bottom portion 612 may be made of a varietyof materials. Materials may include glass, plastic, metal,compostable/fiber-based materials, or a combination of materials. Thetop portion 610 and the bottom portion 612 may be made of the samematerial or different materials. For example, the top portion 110 ismetal while the bottom portion 112 is another material.

The seal 618 is adapted to join the top portion 610 to the bottomportion 612. In one aspect, the seal may provide an air-tight connectionbetween the top portion and the bottom portion, defining a spaceenclosed within the top portion and the bottom portion. In someembodiments, in the space, matter 630 is isolated from an outsideenvironment. The pressure inside the space may be different fromatmospheric pressure. The seal may also prevent leakage and facilitatepressure buildup within the chamber in conjunction with pressure reliefvalve 620 and/or clamp of a heating apparatus (not shown).

In one aspect, a chamber formed by the top portion 610 and the bottomportion 612 may store and/or preserve food. For example, food may bevacuum-sealed inside the chamber. In another aspect, the chambercontains the food during a heating process. In various embodiments, thechamber can be directly be placed on a heating apparatus. For example, auser may obtain the chamber from a distributor (e.g., a grocery store),heat up the contents of the chamber without opening the chamber, andconsume the contents of the chamber directly. In various embodiments,the same chamber stores/preserves food, is a transport vessel for thefood, can be used to cook the food, and the food can be directlyconsumed from the chamber after preparation.

The metal layer 614 (also referred to as a conductive structure) heatsin response to an electromagnetic (EM) source. In some embodiments, themetal layer heats by EM induction. The metal layer can heat matter 630.For example, heat in the metal layer may be conducted to the contents.As further described herein, the heating of the matter (in some cases incombination with a controlled level of moisture) in the chamber allowsfor a variety of preparation methods including dry heat methods such asbaking/roasting, broiling, grilling, sautéing/frying; moist heat methodssuch as steaming, poaching/simmering, boiling; and combination methodssuch as braising and stewing. In various embodiments, several differentheating methods are used in a single preparation process, e.g., thepreparation process comprising a sequence of heating cycles.

The metal layer may be made of a variety of materials. In someembodiments, the metal layer includes an electrically conductingmaterial such as a ferromagnetic metal, e.g., stainless steel. Invarious embodiments, the metal is processed and/or treated in variousways. For example, in some embodiments, the metal is ceramic-coated. Insome embodiments, the metal layer is made of any metallic material,e.g., aluminum.

The membrane 616 (also referred to as a membrane region) is adapted tocontrol an amount of liquid. For example, the membrane may providecontrolled flow of moisture through the membrane. In variousembodiments, the membrane may release liquids (e.g., water) inside aspace defined by the top portion 610 and the bottom portion 612. Forexample, water can be released in a controlled manner and transformed tosteam during a heating process. In various embodiments, the membrane mayabsorb liquids. For example, the membrane may absorb juices released byfood during a heating process.

In some embodiments, the membrane 616 is adapted to provide insulationbetween the metal layer 614 and a surface of the bottom portion 612. Forexample, if the bottom portion is a glass plate, the membrane mayprevent the glass plate from breaking due to heat.

The membrane 616 may be made of a variety of materials. In someembodiments, the membrane includes a heat-resistant spongy material suchas open-cell silicone. In some embodiments, the membrane includesnatural fiber and/or cellulose. The material may be selected based ondesired performance, e.g., if the membrane is intended to absorb liquidor release liquid, a rate at which liquid should be absorbed/released, aquantity of liquid initially injected in the membrane, etc.

The pressure relief valve 620 regulates pressure in a space defined bythe top portion 610 and the bottom portion 612. In various embodiments,the pressure relief valve relieves pressure buildup within the chamber.For example, in various embodiments the valve activates/deploysautomatically in response to sensed temperature or pressure inside thechamber meeting a threshold. In some embodiments, the valve is activatedby a heating apparatus for which the chamber is adapted. For example,the valve may be activated at a particular stage or time during acooking process. The pressure relief valve allows the contents of thechamber to be heated at one or more pre-determined pressures includingat atmospheric pressure. In various embodiments, this accommodatespressure heating techniques.

In some embodiments, the apparatus includes a handle 622. The handle mayfacilitate handling and transport of the apparatus. For example, thehandle may enable a user to remove the apparatus from a base (e.g., fromthe heating apparatus 200 of FIG. 2). In various embodiments, the handleis insulated to allow safe handling of the apparatus when the rest ofthe apparatus is hot. In some embodiments, the handle is collapsiblesuch that the apparatus is easily stored. For example, several apparatusmay be stacked. FIG. 6 shows one example of the handle placement. Thehandle may be provided in other positions or locations.

In some embodiments, the apparatus includes an electronic tag 624. Theelectronic tag encodes information about the apparatus. By way ofnon-limiting example, the encoded information includes identification ofmatter 630, characteristics of the contents, and handling instructions.Using the example of a food package, the electronic tag may storeinformation about the type of food inside the package (e.g., steak,fish, vegetables), characteristics of the food (e.g., age/freshness,texture, any abnormalities), and cooking instructions (e.g., sear thesteak at high heat followed by baking at a lower temperature). Althoughshown below membrane 616, the electronic tag may be provided in otherlocations such as below handle 622, on a wall of the top portion 610,among other places.

The apparatus 600 may be a variety of shapes and sizes. In someembodiments, the shape of the apparatus is compatible with a heatingapparatus such as heating apparatus 200 of FIG. 2. For example, theapparatus may be of a suitable surface area and shape to be heated byapparatus 200. For example, apparatus 600 may be around 7 inches indiameter and around 2 inches in height.

FIG. 7 is a block diagram illustrating an embodiment of an apparatus 700for heating. For example, in various embodiments the heating apparatus700 is adapted to receive an apparatus 730 (also referred to as achamber) and heat contents of the chamber 730. An example of the chamber730 is apparatus 100 of FIG. 1. The heating apparatus 700 includes an EMsource 702, one or more sensors 704, electronic tag reader 706, andcontroller 708.

The EM source 702 heats electrically conductive materials. In variousembodiments, the EM source is an RF source that provides inductiveheating of metals such as ferromagnetic or ferrimagnetic metals. Forexample, the EM source 702 may include an electromagnet and anelectronic oscillator. In some embodiments, the oscillator is controlledby controller 708 to pass an alternating current (AC) through anelectromagnet. The alternating magnetic field generates eddy currents ina target such as metal layer 614 of FIG. 6, causing the metal layer toheat. Heating levels and patterns may be controlled by the frequency ofthe AC and when to apply the AC to the electromagnet as furtherdescribed herein.

The sensor(s) 704 are adapted to detect characteristics of contents ofchamber 730 including any changes that may occur during a heatingprocess. A variety of sensors may be provided including a microphone,camera, thermometer, and/or hygrometer, etc. A microphone may beconfigured to detect sounds of the matter being heated. A camera may beconfigured to detect changes in the appearance of the matter beingheated, e.g., by capturing images of the matter. A hygrometer may beconfigured to detect steam/vapor content of the chamber. For example,the hygrometer may be provided near an opening or pressure relief valvesuch as valve 620 of FIG. 6 to detect moisture escaping the chamber. Theinformation captured by the sensors may be processed by controller 708to determine a stage in the cooking process or a characteristic of thematter being heated as further described herein. In this example, thesensor(s) are shown outside the chamber 730. In some embodiments, atleast some of the sensor(s) are provided inside the chamber 730.

The electronic tag reader 706 reads information about contents of thechamber 730 such as characteristics of packaged food. The informationencoded in the tag may include properties of the contents, instructionsfor preparing/heating the contents, etc. In various embodiments, theelectronic tag reader is configured to read a variety of tag typesincluding barcodes, QR codes, RFIDs and any other tags encodinginformation.

The controller 708 controls operation of the heating apparatus 700. Anexample of the controller is controller 808 of FIG. 8. In variousembodiments, the controller executes instructions for processingcontents of chamber 730. In some embodiments, the instructions areobtained from reading an electronic tag of the chamber 730 via theelectronic tag reader 706. In some embodiments, the controller requestsinstructions from a remote server based on the contents. The controllercontrols the EM source 702 to implement heating levels and patterns,e.g., activating the electromagnet to carry out the heatinginstructions.

In some embodiments, the apparatus includes one or more networkinterfaces (not shown). A network interface allows controller 708 to becoupled to another computer, computer network, or telecommunicationsnetwork using a network connection as shown. For example, through thenetwork interface, the controller 708 can receive information (e.g.,data objects or program instructions) from another network or outputinformation to another network in the course of performingmethod/process steps. Information, often represented as a sequence ofinstructions to be executed on a processor, can be received from andoutputted to another network. An interface card or similar device andappropriate software implemented by (e.g., executed/performed on)controller 708 can be used to connect the heating apparatus 700 to anexternal network and transfer data according to standard protocols. Forexample, various process embodiments disclosed herein can be executed oncontroller 708, or can be performed across a network such as theInternet, intranet networks, or local area networks, in conjunction witha remote processor that shares a portion of the processing. Additionalmass storage devices (not shown) can also be connected to controller 708through the network interface.

In some embodiments, the apparatus includes one or more I/O devices (notshown). An I/O device interface can be used in conjunction with heatingapparatus 700. The I/O device interface can include general andcustomized interfaces that allow the controller 708 to send and receivedata from other devices such as sensors, microphones, touch-sensitivedisplays, transducer card readers, tape readers, voice or handwritingrecognizers, biometrics readers, cameras, portable mass storage devices,and other computers.

In various embodiments, controller 708 is coupled bi-directionally withmemory (not shown), which can include a first primary storage, typicallya random access memory (RAM), and a second primary storage area,typically a read-only memory (ROM). As is well known in the art, primarystorage can be used as a general storage area and as scratch-pad memory,and can also be used to store input data and processed data. Primarystorage can also store programming instructions and data, in the form ofdata objects and text objects, in addition to other data andinstructions for processes operating on controller 708. Also as is wellknown in the art, primary storage typically includes basic operatinginstructions, program code, data and objects used by the controller 708to perform its functions (e.g., programmed instructions). For example,memory can include any suitable computer-readable storage media,described below, depending on whether, for example, data access needs tobe bi-directional or uni-directional. For example, controller 708 canalso directly and very rapidly retrieve and store frequently needed datain a cache memory (not shown).

In some embodiments, the controller implements the heating instructionsbased on sensor readings. The controller may determine that a heatingstage is complete, e.g., the food has reached a desired state, based onsensor readings. For example, when a level of moisture inside thechamber 730 drops below a threshold, a Maillard reaction begins and thefood becomes browned. The Maillard reaction may be indicated by acharacteristic sound (e.g., sizzling). For example, in variousembodiments, the controller determines a characteristic of the foodbeing prepared using signals collected by the sensor(s) 704. Thecontroller receives a sensor reading from the microphone and/or othersensors and determines that the Maillard reaction has begun based on thesensor reading meeting a threshold or matching a profile. For example,the color of food may indicate whether the food has been cooked tosatisfaction. The controller receives a sensor reading from the cameraand/or other sensors and determines that food has been cooked to adesired level of tenderness based on the sensor reading meeting athreshold or matching a profile.

The controller may adjust a heating stage or a heating power level basedon sensor readings. For example, in various embodiments at the end of adefault heating time indicated by heating instructions, the controllerchecks sensor readings. The sensor readings indicate that the food isnot sufficiently browned. The controller may then extend the heatingtime such that the food is more browned.

In various embodiments, the heating apparatus includes a cradle orsupport for apparatus 100. For example, the support may be separatedfrom the heating apparatus, the apparatus 100 inserted into the support,and the support returned to the heating apparatus. The support maysupport a circumference/walls of apparatus 100.

In various embodiments, the heating apparatus includes a switch (notshown). The switch may power on the heating apparatus and/or receiveuser input to begin a heating process. In various embodiments, theswitch is provided with a visual indicator of progress of a heatingprocess. For example, the switch may be provided at the center of alight “bulb,” where the light bulb includes one or more colored lights(e.g., LED lights). The light “bulb” may change colors during theheating process, acting like a timer. For example, at the beginning of aheating process, the bulb is entirely be red. As the heating processprogresses, the light gradually turns green (e.g., segment by segment)until the light is entirely green, indicating completion of a heatingstage or heating process. The light may gradually turn green segment bysegment as if with the sweeping of a second hand of a clock, where asection to the left of the hour and minutes hands is red and a sectionto the right of the hour and minute hands is green until both hands areat 12:00 and the bulb is entirely green.

In various embodiments, the heating apparatus may include a userinterface to display and/or receive user input. For example, a currentpower/energy level of a heating phase may be displayed on the userinterface. In some embodiments, the energy levels are categorized Level1 to Level 6 and a current power level of a heating phase is displayedon the user interface. The categorization may facilitate usercomprehension of the energy level. Power/energy levels may berepresented in an analog or continuous manner in some embodiments.

The heating apparatus 700 may be a variety of shapes. For example,heating apparatus 700 may be around 9 inches in diameter and around 2inches in height. In some embodiments, the shape of the apparatus iscompatible with an apparatus such as chamber 600 of FIG. 6. For example,the apparatus may be of a suitable surface area and shape to heat thecontents of chamber 600.

FIG. 8 is a block diagram of an embodiment of a controller 808 for aheating apparatus. For example, the controller may be provided inheating apparatus 700 of FIG. 7. The controller 808 includes controllogic 804, a tag database 810, resonant circuit 814, and power 812. Inthis example, the controller 808 is communicatively coupled to EM source802 and tag reader 806.

The tag reader 806 reads a tag 814. The tag 814 may encode informationabout contents of a chamber. For example, the tag 814 may be encoded byprocess 200 of FIG. 2. An example of tag reader 806 is electronic tagreader 706 of FIG. 7.

The control logic 804 is configured to receive tag information from thetag reader 806 and determine one or more heating cycles based on the taginformation. In some embodiments, the control logic determines heatingcycle(s) by looking up an association between the tag information andstored heating cycles. For example, the control logic may determineheating cycle(s) adapted to properties of a chamber in which theheatable load is provided and/or characteristics of the heatable load.In various embodiments, the control logic executes one or more processessuch as heating schedules/cycles corresponding to FIG. 3.

In some embodiments, the control logic is implemented by one or moreprocessors (also referred to as a microprocessor subsystem or a centralprocessing unit (CPU)). For example, the control logic 804 can beimplemented by a single-chip processor or by multiple processors. Insome embodiments, a processor is a general purpose digital processorthat controls the operation of the heating apparatus 700. Usinginstructions retrieved from memory, the processor controls the receptionand manipulation of input data, and the output and display of data onoutput devices.

The tag database 810 stores associations between heatable loads andheating cycles. For example, energy level, duration, and otherproperties of heating cycles may be stored in association with a load orcharacteristic(s) the load. In various embodiments, the associations arepre-defined and loaded into the database. In various embodiments, theassociations are refined based on machine learning, user feedback,and/or sensor readings of heatable load properties before, during, orafter a heating cycle. Although shown as part of the controller 808, thetag database may instead be external to the controller.

The resonant circuit 814 controls the EM source 802. In someembodiments, the resonant circuit 814 has an integrated EM source 802,e.g., an inductor coil (not shown). In some embodiments, the EM sourceis a separate element from the resonant circuit 814.

The power 812 is input to the resonant circuit 814. In variousembodiments, power 812 is a DC source. The DC source may be an internalor external DC source or may be adapted from an external AC source.Although shown as an internal source, the power may instead be externalto the controller 808.

In operation, tag reader 806 read tag information from tag 814, andsends the information to the control logic 804. The control logic 804maps the received tag information to one or more heating cycles usingassociations stored in tag database 810. The control logic 804 theninstructs the resonant circuit 814 to execute the heating cycles. Forexample, the control logic 804 may also control when power 812 isprovided to the resonant circuit 814. Resonant circuit 814 thenactivates the EM source 802.

FIG. 9 is a flowchart illustrating an embodiment of a process 900 tooperate an automatic heating system. In various embodiments, the process900 may be implemented by a processor such as control logic 808 of FIG.8.

A tag is received (902). In various embodiments, the tag is anelectronic tag associated with a heatable load. Tag 624 of FIG. 6 is anexample of a tag encoding information about matter 630. Returning toFIG. 9, the tag is mapped to a heating cycle (904). In variousembodiments, the tag is mapped by looking up an association between thetag and heating cycles. The heating cycles may be adapted forcharacteristics of a heatable load. The heating cycle may be defined bya duration and an energy level as further described herein. Upondetermination of one or more heating cycles, the heating cycle(s) isexecuted (906). For example, in various embodiments control logicinstructs a resonant circuit, e.g., 814 of FIG. 8, to drive an EMsource, e.g., 802 of FIG. 8.

Although the foregoing embodiments have been described in some detailfor purposes of clarity of understanding, the invention is not limitedto the details provided. There are many alternative ways of implementingthe invention. The disclosed embodiments are illustrative and notrestrictive.

What is claimed is:
 1. A method comprising: receiving at least onesensor reading associated with food; determining at least onecharacteristic of the food based on the at least one sensor reading;generating cooking instructions for the food based on the at least onecharacteristic; instructing a packager to package the food based atleast in part on the generated cooking instructions, wherein the food ispackaged into a container including a metal layer adapted to heat thefood and a membrane layer adapted to absorb or release a substance; andstoring data that associates the cooking instructions with the food. 2.The method of claim 1, wherein the cooking instructions includes asequence of cooking phases, including at least one of: duration of eachof the cooking phases; an energy level for each of the cooking phases;and a response to an event that occurs during at least one of thecooking phases.
 3. The method of claim 1, wherein the at least onesensor reading includes at least one of: spectroscopy, image analysis,fluorescence, Mill, and X-ray.
 4. The method of claim 1, wherein the atleast one sensor reading includes at least one of: terahertz radiationand thermal radiation.
 5. The method of claim 1, wherein the at leastone sensor reading includes at least one of: a chemically-sense readingand gas analysis.
 6. The method of claim 1, wherein the at least onesensor reading includes at least one of: a mechanical, a sonic, and anultrasonic reading.
 7. The method of claim 1, wherein the determinationof at least one characteristic of the food includes at least one of:maturity and freshness.
 8. The method of claim 1, wherein thedetermination of at least one characteristic of the food includes atleast one of: water content, nitrogen content, and protein content. 9.The method of claim 1, wherein the determination of at least onecharacteristic of the food includes at least one of: fat content, sugarcontent, and acidity.
 10. The method of claim 1, wherein thedetermination of at least one characteristic of the food includes atleast one of: size, volume, weight, and shape.
 11. The method of claim1, wherein the determination of at least one characteristic of the foodincludes a type of the food and the generation of the cookinginstructions is adapted to the type of food.
 12. The method of claim 1,wherein the generation of the cooking instructions is adapted to atleast one characteristic of the food.
 13. The method of claim 1, whereinthe storing the cooking instructions includes sending the instructionsto a server.
 14. The method of claim 1, wherein the storing the cookinginstructions includes encoding the instructions in an electronic tag.15. The method of claim 1, wherein the substance is water.
 16. Themethod of claim 1, determining a quantity of the substance to injectinto the membrane layer.
 17. The method of claim 1, further comprisingdetermining when to release a substance during at least one cookingphase corresponding to the cooking instructions.
 18. The method of claim1, further comprising determining when to release the substance duringat least one cooking phase corresponding to the cooking instructions.19. A system comprising: a processor configured to: receive at least onesensor reading associated with food; determine at least onecharacteristic of the food based on the at least one sensor reading;generate cooking instructions for the food based on the at least onecharacteristic; instruct a packager to package the food based at leastin part on the generated cooking instructions, wherein the food ispackaged into a container including a metal layer adapted to heat thefood and a membrane layer adapted to absorb or release a substance; andstore data that associates the cooking instructions with the food; and amemory coupled to the processor and configured to provide the processorwith instructions.
 20. A computer program product, the computer programproduct being embodied in a non-transitory computer readable storagemedium and comprising computer instructions for: receiving at least onesensor reading associated with food; determining at least onecharacteristic of the food based on the at least one sensor reading;generating cooking instructions for the food based on the at least onecharacteristic; instructing a packager to package the food based atleast in part on the generated cooking instructions, wherein the food ispackaged into a container including a metal layer adapted to heat thefood and a membrane layer adapted to absorb or release a substance; andstoring data that associates the cooking instructions with the food.